import _ from "lodash";
import { ValidateError } from "../../enums/ErrorsEnum";

/**
 * 校验变量是否为空
 * @param values 变量值列表
 */
export function validateEmpty(values: any[]) {
  for (const value of values) {
    if (_.isEmpty(value)) throw new ValidateError("参数不能为空");
  }
}

/**
 * 变量信息
 */
export interface VariableInfo {
  /**
   * 变量名
   */
  name: string;
  /**
   * 变量的值
   */
  value: any;
}

/**
 * 校验变量是否有空值
 * @param vars 变量定义列表
 */
export function validateEmptyWithName(vars: VariableInfo[]) {
  for (const varInfo of vars) {
    if (_.isEmpty(varInfo.value))
      throw new ValidateError(`${varInfo.name} 不能为空`);
  }
}
